﻿using Abp.AutoMapper;
using AVIS.OutBound.Cities;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AVIS.OutBound.Stores.Cache
{
    /// <summary>
    /// 门店的缓存对象
    /// </summary>
    [AutoMap(typeof(Store))]
    [Serializable]
    public class StoreCacheItem
    {
        public const string CacheName = "AvisAppStoreCache";

        public int Id { get; set; }

        /// <summary>
        /// 门店编号
        /// </summary>
        public string Code { get; set; }

        /// <summary>
        /// 英文名字
        /// </summary>
        public string ENName { get; set; }

        /// <summary>
        /// 中文名字
        /// </summary>
        public string CNName { get; set; }

        /// <summary>
        /// 纬度
        /// </summary>
        public virtual double? Latitude { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        public virtual double? Longitude { get; set; }

        /// <summary>
        /// 门店类型
        ///     Unmanned
        ///     City/Downtown
        ///     Railway/Bus Station
        ///     Exhibition/Conference Centre
        ///     Seaport/Dock
        ///     HQ
        ///     Delivery/Collection Unit
        ///     Downtown/Off Airport
        ///     Garage/Hotel
        ///     Airport
        /// </summary>
        public string LocationType { get; set; }

        /// <summary>
        /// 门店联系电话
        /// </summary>
        public string Telephone { get; set; }

        /// <summary>
        /// 门店联系传真
        /// </summary>
        public string Fax { get; set; }

        /// <summary>
        /// 门店地址
        /// </summary>
        public string LocationAddress { get; set; }

        /// <summary>
        /// 附近门店的Code, 如果值等于 999 ，则表示没有附近门店
        /// </summary>
        public string AGDCode { get; set; }

        /// <summary>
        /// 周边门店的编号
        /// </summary>
        public string NewADGCode { get; set; }

        /// <summary>
        /// 距离（距离目的地多少公里）
        /// </summary>
        public double Distance { get; set; }

        /// <summary>
        /// 所属城市编号
        /// </summary>
        public string CityCode { get; set; }

        /// <summary>
        /// 地区编号
        /// </summary>
        public string RegionCode { get; set; }

        /// <summary>
        /// 排序号
        /// </summary>
        public int SortIndex { get; set; }

        /// <summary>
        /// 营业时间
        /// </summary>
        public StoreHoursCacheItem StoreHours { get; set; }

        /// <summary>
        /// 是否热门
        /// </summary>
        public bool IsHot { get; set; }
    }
}
